package com.ceolt.biz;

import java.util.List;

import com.ceolt.entity.BaseTerm;
import com.ceolt.entity.TestRecord;
import com.ceolt.exception.NoTestRecordException;

/***********************************
 * 
 * @description 在线测试小业务
 * @author yejf
 * @date 2013-7-1 下午4:35:06
 * @version jdk1.6
 *
 */
public interface ITestingBiz {

	// 定义存放 测试记录的目录路径
	String TESTRECORD_DIR = "datas/testing";

	// 定义存放 测试记录的文件路径
	String TEST_RECORD_FILE = "records.rec";

	/****************
	 * 获取测试数据，它的来源都是从原始数据中随机抽取出指定数量的 数据。
	 * 
	 * @param num
	 *            数据量
	 * @return 抽取的数据集合
	 */
	List<BaseTerm> getTestingData(int num);

	/********
	 * 此方法从文件中读取保存过的测试记录，它的数据来源只能是之前 保存下来的记录文件。 此方法的实现，就是委托 ITestRecordDao的 read
	 * 方法。
	 * 
	 * @return
	 * @throws NoTestRecordException
	 */
	List<TestRecord> reviewTestRecord() throws NoTestRecordException;

	/*******
	 * 持久化测试的数据到文件
	 * 
	 * @param record
	 * @return 保存成功返回true,失败返回false
	 */
	boolean saveTestRecord(TestRecord record);

}
